home *** CD-ROM | disk | FTP | other *** search
/ Collection of Internet / Collection of Internet.iso / infosrvr / dev / www_talk.930 / 000177_timbl _Wed Jul 15 00:33:09 1992.msg < prev    next >
Internet Message Format  |  1994-01-24  |  4KB

  1. Return-Path: <timbl>
  2. Received: by  nxoc01.cern.ch  (NeXT-1.0 (From Sendmail 5.52)/NeXT-2.0)
  3.     id AA02089; Wed, 15 Jul 92 00:33:09 MET DST
  4. Date: Wed, 15 Jul 92 00:33:09 MET DST
  5. From: timbl (Tim Berners-Lee)
  6. Message-Id: <9207142233.AA02089@ nxoc01.cern.ch >
  7. To: fkappe@fiicmds04.tu-graz.ac.at, www-talk@nxoc01.cern.ch
  8. Subject: Re: HTML DTD and related problems (rather long)
  9.  
  10. I am replying very late to a message of Frank Kappe,
  11. dated 25 Jun 1992.
  12.  
  13. First of all, to clear up some things about W3 HTML.
  14. You can't nest anchors.
  15. You can't nest anything EXCEPT you can put any elements inside
  16. an anchor (excpt for other anchors) and you can put an anchor
  17. inside any elements.
  18. Then there is the slight structure of the <DL>[<DT><DD>]*</DL>
  19. etc which is required.
  20.  
  21. I think I emntioned in earlier messages that the lack of structure
  22. is to make it easier to process HTML on systems which have styled
  23. text (like most systems, MSWord etc).
  24.  
  25. Now it is interesting that you in Gyper-G allow anchors to be
  26. any section of the text.  This of course is counter to the
  27. SGML philosophy of strict nesting (SGML people can get quite
  28. religeous about this, but I can't.)  I think it is useful
  29. to be able to refer to two separate overlapping anchors.
  30. The problem is it is taken as given by any SGML DTD designer
  31. that this sort of structure in a document is "BAD". This
  32. means that SGML tools won't be able to process the <AS>
  33. and <AE> (anchor start and anchor end) tags, you'll have to
  34. write something special on top which keep track of anchors.
  35. AGML parsers won't be able to verify the anchor structure.
  36. So though the DTD is valid, but it doesn't in fact representthe restrictions.
  37.  
  38. You say that you feel it is better to store the links separately
  39. rather than in the document.  First of all let me say that W3 does NOT
  40. require you to do that -- it just requires that the links, anchors
  41. and text are transmitted at the same time on the net. That is very different.
  42. Many systems generate the HTML on the fly from other sources of link
  43. information.
  44.  
  45. Nowlooking at this question of where to store the links, the 'link database"
  46. model you propose is the Intermedia model of Norman Meyrowitz et al.
  47. This was developped in a non-distributed environment, where a "web"
  48. (database of links) was available to the readers and centrally coordinated.
  49. If you expand that system to more than one web server, and scale it to
  50. global, then you find that the same problems of ensuring consistency
  51. occur between the multiple link databases when before they occured between dcouments.  You can't set up a system of bidirectional links for example,
  52. which you could in the non-distributed case.
  53.  
  54. Link databases have their advantages, though.  A model I am rather keen on
  55. atthe moment is of servers which are both link databases and
  56. source code control (sccs, rcs etc) systems.  In this world,
  57. you don't need to store anchors at all -- you just quote the
  58. character number AND VERSION number of the document.  To find an
  59. anchor, if you have a more recent version than the one referred to in the anchor,
  60. you have to ask the server to translate the anchor's position in the
  61. old document into a position in the new one. It may reply with
  62. the same or a didfferent position, or that as far as its "diff"
  63. algorithms go, it can't find where the original anchor text would
  64. be in the new document, or it might really have gone.
  65. This would allow links to be made around source code (for which you want
  66. source code control anyway).
  67.  
  68. There would be common problems when you do the sorts of changes which
  69. diff can't handle intelligently, like you swap the two halves of a file,
  70. or you change all the "a_"s to "A_".  In these cases, a smart editor
  71. would be able to explian each editing change to the server as it goes,
  72. to the server would understand the relationship between the pre-edit
  73. and post-edit versions.  If you are going to do that, then you can
  74. go a small extra step and make the server coordinate simultaneous edits
  75. by many people, which gives you a group editor.
  76.  
  77.    Tim